    //接口统一地址
    var url = "https://dev.apis.sh/9WC9A9@N@/";
    //静态资源地址需在服务器地址后面添加static前缀 
    var url_file = "https://dev.apis.sh/9WC9A9@N@/static/"
        // 全局变量存储用户昵称

    // 封装xhr请求函数  请求类型 地址  post时相关数据
    /**
     * 封装一个原生的AJAX请求
     * @param {*} type 请求类型 （POST/GET）
     * @param {*} url  接口地址
     * @param {*} cb   请求成功的回调函数
     * @param {*} params  请求参数
     * @param {*} datatype  请求返回的数据类型
     */
    function ajaxXHR(type, url, cb, parms, datatype) {
        if (datatype === undefined) {
            datatype = 'json';
        }
        $.ajax(url, {
                method: type,
                dataType: datatype,
                data: parms,
                xhrFields: {
                    withCredentials: true // 允许跨域名储存和访问cookie
                }
            })
            .done(function(data) {
                if (data.code != 'success') {
                    $('.modal-body').html(data.message);
                    $('.modal').modal('show');
                } else {
                    cb(data);
                }
                console.log("接口调取成功！");
            })
            .fail(function() {
                $('.modal-body').html("接口调取出错！");
                $('.modal').modal('show');
            });


        // var xhr = new XMLHttpRequest();
        // xhr.onreadystatechange = function() {
        //     if (xhr.readyState == 4 && xhr.status == 200) {
        //         var data = JSON.parse(xhr.response);
        //         cb(data);
        //         //执行调用方法
        //         // cb(xhr.response);
        //     }
        // }
        // xhr.open(type, url);
        // // xhr.responseType="json";
        // xhr.withCredentials = true;
        // xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        // xhr.send(params);
    }
    /**
     * 
     * @parm {char} parmName 通过地址栏传来的字段名称
     */
    function getQuery(parmName) {
        var reg = new RegExp('(^|&)' + parmName + '=([^&]*)(&|$)', 'i');

        // var reg = new RegExp("(^|&)" + parmName + "=[^&]*)(&|$)", "i");
        var r = window.location.search.substr(1).match(reg);
        return r ? decodeURIComponent(r[2]) : null;
    }

    // /**
    //  * 封装一个传输数据请求
    //  * @param {*} type 请求类型 
    //  * @param {*} url  接口地址
    //  * @param {*} cb   请求成功的回调函数
    //  * @param {*} params  请求参数（POST）
    //  * @param {*} type  请求类型
    //  */
    // function postXHR(type, url, cb, params) {
    //     var xhr = new XMLHttpRequest();
    //     xhr.onreadystatechange = function() {
    //         if (xhr.readyState == 4 && xhr.status == 200) {
    //             var data = JSON.parse(xhr.response);
    //             cb(data);
    //             //执行调用方法
    //             // cb(xhr.response);
    //         }
    //     }
    //     xhr.open(type, url);
    //     xhr.withCredentials = true;
    //     // xhr.setRequestHeader("Content-Type", "multipart/form-data");
    //     // xhr.responseType="json";
    //     xhr.send(params);
    // }
    //
    /**通过Localstorage判断用户是否登陆
     * 判断用户是否登陆
     */
    function ifLoged() {
        // var userIcon = document.getElementById("userIcon");
        var $username = $(".userName");
        //已登陆
        if (localStorage.token != undefined) {
            $("#notLoginNav").style.display = "none";
            $("#userTopInfo").style.display = "inline-block";
            //加载用户头像 姓名等相关信息
            // userIcon.src = url_file + localStorage.avatar;
            $username.innerHTML = localStorage.name;
        } else {
            $("#notLoginNav").style.display = "inline-block";
            $("#userTopInfo").style.display = "none";
        }



    };

    /**
     * 验证日期格式
     * @param date
     * @return {boolean}返回是否为正确日期格式
     */
    function checkDatebydate(date) {
        var result = date.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
        if (result == null)
            return false;
        var d = new Date(result[1], result[3] - 1, result[4]);
        return (d.getFullYear() == result[1] && (d.getMonth() + 1) == result[3] && d.getDate() == result[4]);
    }

    function isNum(value) {
        var patrn = /^(-)?\d+(\.\d+)?$/;
        if (patrn.exec(value) == null || value == "") {
            return false;
        } else {
            return true;
        }
    }
    /** 使用splice 遍历并移除一个数组中的指定元素
     * ！ 减小长度！
     * @param {num,String} value 移除的值
     * @param {Array} Arr 数组
     */
    function removeArrayItem(value, Arr) {
        for (let i = 0; i < Arr.length; i++) {
            const e = Arr[i];
            if (e == value) {
                Arr.splice(i, 1);
            }
        }
    }